home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FishMarket 1.0
/
FishMarket v1.0.iso
/
fishies
/
076-100
/
disk_096
/
tek4695
/
init.asm
< prev
next >
Wrap
Assembly Source File
|
1992-05-06
|
3KB
|
143 lines
;
; Excerpt from Amiga ROM Kernel Reference Manual: Libraries and
; Devices. Used by permission, 1987, Phil Staub.
;
;**************************************************************************
; *
; Copyright 1985, Commodore-Amiga Inc. All rights reserved. *
; No part of this program may be reproduced, transmitted *
; transcribed, stored in retrieval system, or translated into *
; any language or computer language, in any form or by any means, *
; electronic, mechanical, magnetic, optical, chemical, *
; manual or ohterwise, without the prior written permission of *
; Commodore-Amiga Incorporated, 983 University Ave. Building #D, *
; Los Gatos, California, 95030 *
; *
;**************************************************************************
section printer
; included files
include "exec/types.i"
include "exec/nodes.i"
include "exec/lists.i"
include "exec/memory.i"
include "exec/ports.i"
include "exec/libraries.i"
include "macros.i"
; imported functions
XREF_EXE CloseLibrary
XREF_EXE OpenLibrary
XREF _AbsExecBase
XREF _PEDData
; exported globals
XDEF _Init
XDEF _Expunge
XDEF _Open
XDEF _Close
XDEF _PD
XDEF _PED
XDEF _SysBase
XDEF _DOSBase
XDEF _GfxBase
XDEF _IntuitionBase
;***********************************************
section printer,data
_PD DC.L 0
_PED DC.L 0
_SysBase DC.L 0
_DOSBase DC.L 0
_GfxBase DC.L 0
_IntuitionBase DC.L 0
;***********************************************
section printer,code
_Init:
move.l 4(a7),_PD
lea _PEDData(pc),a0
move.l a0,_PED
move.l a6,-(a7)
move.l _AbsExecBase,a6
move.l a6,_SysBase
; open the dos library
lea DLName(pc),a1
moveq #0,d0
CALLEXE OpenLibrary
move.l d0,_DOSBase
beq.l initDLErr
; open the graphics library
lea GLName(pc),a1
moveq #0,d0
CALLEXE OpenLibrary
move.l d0,_GfxBase
beq.l initGLErr
; open the intuition library
lea ILName(pc),a1
moveq #0,d0
CALLEXE OpenLibrary
move.l d0,_IntuitionBase
beq.l initILErr
moveq #0,d0
pdiRTS:
move.l (a7)+,a6
rts
initPAErr:
move.l _IntuitionBase,a1
LINKEXE CloseLibrary
initILErr:
move.l _GfxBase,a1
LINKEXE CloseLibrary
initGLErr:
move.l _DOSBase,a1
LINKEXE CloseLibrary
initDLErr:
moveq #-1,d0
bra.s pdiRTS
ILName:
dc.b 'intuition.library'
dc.b 0
DLName:
dc.b 'dos.library'
dc.b 0
GLName:
dc.b 'graphics.library'
dc.b 0
ds.w 0
;
_Expunge:
move.l _IntuitionBase,a1
LINKEXE CloseLibrary
move.l _GfxBase,a1
LINKEXE CloseLibrary
move.l _DOSBase,a1
LINKEXE CloseLibrary
_Open:
moveq #0,d0
rts
_Close:
moveq #0,d0
rts
end